package com.indexingsystem.boss.admin.mapper;

import com.indexingsystem.boss.Vo.IdxThemeTablesListVo;
import com.indexingsystem.boss.Vo.IdxThemeTableslReqVo;
import com.indexingsystem.boss.entity.IdxThemeTable;
import com.indexingsystem.boss.entity.IdxThemeTableWithBLOBs;

import java.util.List;

public interface IdxThemeTableMapper {
    int deleteByPrimaryKey(Integer themeTableId);

    int insert(IdxThemeTableWithBLOBs record);

    int insertSelective(IdxThemeTableWithBLOBs record);

    IdxThemeTableWithBLOBs selectByPrimaryKey(Integer themeTableId);

    int updateByPrimaryKeySelective(IdxThemeTableWithBLOBs record);

    int updateByPrimaryKeyWithBLOBs(IdxThemeTableWithBLOBs record);

    int updateByPrimaryKey(IdxThemeTable record);
    
    /**
     * 根据父级id,查询所有父级列表
     * @param parentId
     * @return
     */
    List<IdxThemeTableWithBLOBs> selectByParentId(List<Integer> parentid);
    
    /**
     * 根据主题词表id查询所有下级列表
     * @param themeTablesId
     * @return
     */
    List<IdxThemeTableWithBLOBs> getThemeTablesById(Integer themeTableId);
    
    
    /**
     * 批量删除主题词表
     * @param list
     * @return
     */
    Integer deleteByIdBatch(List<String> list);


    /**
     * 分页查询主题词表
     * @param idxThemeTableslReqVo
     * @return
     */
    List<IdxThemeTablesListVo> selectIdxThemeTablel(IdxThemeTableslReqVo idxThemeTableslReqVo);


    /**
     * 分页查询主题词表数量
     * @param idxThemeTableslReqVo
     * @return
     */
    Integer selectIdxThemeTableCount(IdxThemeTableslReqVo idxThemeTableslReqVo);
    
    /**
     * 查询所有出题词表
     * @return
     */
    List<IdxThemeTableWithBLOBs> selectAllList();
}